package com.ruoyi.enterprise.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 项目建设管理对象 project_construction
 * 
 * @author yxf
 * @date 2021-08-25
 */
public class ProjectConstruction extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 项目建设ID */
    private Long pcId;

    /** 建设项目名称 */
    @Excel(name = "建设项目名称")
    private String pcName;

    /** 项目代码 */
    @Excel(name = "项目代码")
    private String pcCode;

    /** 建设地点 */
    @Excel(name = "建设地点")
    private String pcAddress;

    /** 建设内容、规模 */
    @Excel(name = "建设内容、规模")
    private String pcContent;

    /** 项目建设周期（月） */
    @Excel(name = "项目建设周期", readConverterExp = "月=")
    private Long pcCycle;

    /** 环境影响评价行业类别 */
    @Excel(name = "环境影响评价行业类别")
    private String pcEnvSectors;

    /** 建设性质 */
    @Excel(name = "建设性质")
    private String pcBuildProperties;

    /** 现有工程排污许可证编号 */
    @Excel(name = "现有工程排污许可证编号")
    private String pcNowPepNo;

    /** 规划环评开展情况 */
    @Excel(name = "规划环评开展情况")
    private String pcPlanEnvCase;

    /** 规划环评审查机关 */
    @Excel(name = "规划环评审查机关")
    private String pcPlanEnvCensors;

    /** 建设地点中心坐标，经度（非线性工程） */
    @Excel(name = "建设地点中心坐标，经度", readConverterExp = "非=线性工程")
    private String pcNolinearEngLng;

    /** 建设地点中心坐标，纬度（非线性工程） */
    @Excel(name = "建设地点中心坐标，纬度", readConverterExp = "非=线性工程")
    private String pcNolinearEngLat;

    /** 建设地点坐标，经度起点（线性工程） */
    @Excel(name = "建设地点坐标，经度起点", readConverterExp = "线=性工程")
    private String pcLinearEngLngStar;

    /** 建设地点坐标，经度终点（线性工程） */
    @Excel(name = "建设地点坐标，经度终点", readConverterExp = "线=性工程")
    private String pcLinearEngLngEnd;

    /** 建设地点坐标，纬度起点（线性工程） */
    @Excel(name = "建设地点坐标，纬度起点", readConverterExp = "线=性工程")
    private String pcLinearEngLatStar;

    /** 建设地点坐标，纬度终点（线性工程） */
    @Excel(name = "建设地点坐标，纬度终点", readConverterExp = "线=性工程")
    private String pcLinearEngLatEnd;

    /** 工程长度(千米) */
    @Excel(name = "工程长度(千米)")
    private Long pcEngLength;

    /** 总投资 */
    @Excel(name = "总投资")
    private Long pcTotalInvestment;

    /** 环保投资 */
    @Excel(name = "环保投资")
    private Long pcEnvironmentInvestment;

    /** 环保投资比例 */
    @Excel(name = "环保投资比例")
    private String pcInvestmentRatio;

    /** 计划开工时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划开工时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date pcProjectStartTime;

    /** 预计投产时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "预计投产时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date pcEinsatzZiel;

    /** 国民经济行业类型 */
    @Excel(name = "国民经济行业类型")
    private String pcIndustryType;

    /** 项目申请类别 */
    @Excel(name = "项目申请类别")
    private String pcApplicationCategory;

    /** 规划环评文件名 */
    @Excel(name = "规划环评文件名")
    private String pcPlanEnvFilename;

    /** 项目现状 */
    @Excel(name = "项目现状")
    private String pcStatus;

    /** 规划环评审查意见文号 */
    @Excel(name = "规划环评审查意见文号")
    private String pcPlanEnvReviewNum;

    /** 立项报告 */
    @Excel(name = "立项报告")
    private String pcBeginningReport;

    /** 政府相关行政主管部门同意立项的批复 */
    @Excel(name = "政府相关行政主管部门同意立项的批复")
    private String pcApproval;

    /** 企业ID */
    @Excel(name = "企业ID")
    private Long epId;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    public void setPcId(Long pcId) 
    {
        this.pcId = pcId;
    }

    public Long getPcId() 
    {
        return pcId;
    }
    public void setPcName(String pcName) 
    {
        this.pcName = pcName;
    }

    public String getPcName() 
    {
        return pcName;
    }
    public void setPcCode(String pcCode) 
    {
        this.pcCode = pcCode;
    }

    public String getPcCode() 
    {
        return pcCode;
    }
    public void setPcAddress(String pcAddress) 
    {
        this.pcAddress = pcAddress;
    }

    public String getPcAddress() 
    {
        return pcAddress;
    }
    public void setPcContent(String pcContent) 
    {
        this.pcContent = pcContent;
    }

    public String getPcContent() 
    {
        return pcContent;
    }
    public void setPcCycle(Long pcCycle) 
    {
        this.pcCycle = pcCycle;
    }

    public Long getPcCycle() 
    {
        return pcCycle;
    }
    public void setPcEnvSectors(String pcEnvSectors) 
    {
        this.pcEnvSectors = pcEnvSectors;
    }

    public String getPcEnvSectors() 
    {
        return pcEnvSectors;
    }
    public void setPcBuildProperties(String pcBuildProperties) 
    {
        this.pcBuildProperties = pcBuildProperties;
    }

    public String getPcBuildProperties() 
    {
        return pcBuildProperties;
    }
    public void setPcNowPepNo(String pcNowPepNo) 
    {
        this.pcNowPepNo = pcNowPepNo;
    }

    public String getPcNowPepNo() 
    {
        return pcNowPepNo;
    }
    public void setPcPlanEnvCase(String pcPlanEnvCase) 
    {
        this.pcPlanEnvCase = pcPlanEnvCase;
    }

    public String getPcPlanEnvCase() 
    {
        return pcPlanEnvCase;
    }
    public void setPcPlanEnvCensors(String pcPlanEnvCensors) 
    {
        this.pcPlanEnvCensors = pcPlanEnvCensors;
    }

    public String getPcPlanEnvCensors() 
    {
        return pcPlanEnvCensors;
    }
    public void setPcNolinearEngLng(String pcNolinearEngLng) 
    {
        this.pcNolinearEngLng = pcNolinearEngLng;
    }

    public String getPcNolinearEngLng() 
    {
        return pcNolinearEngLng;
    }
    public void setPcNolinearEngLat(String pcNolinearEngLat) 
    {
        this.pcNolinearEngLat = pcNolinearEngLat;
    }

    public String getPcNolinearEngLat() 
    {
        return pcNolinearEngLat;
    }
    public void setPcLinearEngLngStar(String pcLinearEngLngStar) 
    {
        this.pcLinearEngLngStar = pcLinearEngLngStar;
    }

    public String getPcLinearEngLngStar() 
    {
        return pcLinearEngLngStar;
    }
    public void setPcLinearEngLngEnd(String pcLinearEngLngEnd) 
    {
        this.pcLinearEngLngEnd = pcLinearEngLngEnd;
    }

    public String getPcLinearEngLngEnd() 
    {
        return pcLinearEngLngEnd;
    }
    public void setPcLinearEngLatStar(String pcLinearEngLatStar) 
    {
        this.pcLinearEngLatStar = pcLinearEngLatStar;
    }

    public String getPcLinearEngLatStar() 
    {
        return pcLinearEngLatStar;
    }
    public void setPcLinearEngLatEnd(String pcLinearEngLatEnd) 
    {
        this.pcLinearEngLatEnd = pcLinearEngLatEnd;
    }

    public String getPcLinearEngLatEnd() 
    {
        return pcLinearEngLatEnd;
    }
    public void setPcEngLength(Long pcEngLength) 
    {
        this.pcEngLength = pcEngLength;
    }

    public Long getPcEngLength() 
    {
        return pcEngLength;
    }
    public void setPcTotalInvestment(Long pcTotalInvestment) 
    {
        this.pcTotalInvestment = pcTotalInvestment;
    }

    public Long getPcTotalInvestment() 
    {
        return pcTotalInvestment;
    }
    public void setPcEnvironmentInvestment(Long pcEnvironmentInvestment) 
    {
        this.pcEnvironmentInvestment = pcEnvironmentInvestment;
    }

    public Long getPcEnvironmentInvestment() 
    {
        return pcEnvironmentInvestment;
    }
    public void setPcInvestmentRatio(String pcInvestmentRatio) 
    {
        this.pcInvestmentRatio = pcInvestmentRatio;
    }

    public String getPcInvestmentRatio() 
    {
        return pcInvestmentRatio;
    }
    public void setPcProjectStartTime(Date pcProjectStartTime) 
    {
        this.pcProjectStartTime = pcProjectStartTime;
    }

    public Date getPcProjectStartTime() 
    {
        return pcProjectStartTime;
    }
    public void setPcEinsatzZiel(Date pcEinsatzZiel) 
    {
        this.pcEinsatzZiel = pcEinsatzZiel;
    }

    public Date getPcEinsatzZiel() 
    {
        return pcEinsatzZiel;
    }
    public void setPcIndustryType(String pcIndustryType) 
    {
        this.pcIndustryType = pcIndustryType;
    }

    public String getPcIndustryType() 
    {
        return pcIndustryType;
    }
    public void setPcApplicationCategory(String pcApplicationCategory) 
    {
        this.pcApplicationCategory = pcApplicationCategory;
    }

    public String getPcApplicationCategory() 
    {
        return pcApplicationCategory;
    }
    public void setPcPlanEnvFilename(String pcPlanEnvFilename) 
    {
        this.pcPlanEnvFilename = pcPlanEnvFilename;
    }

    public String getPcPlanEnvFilename() 
    {
        return pcPlanEnvFilename;
    }
    public void setPcStatus(String pcStatus) 
    {
        this.pcStatus = pcStatus;
    }

    public String getPcStatus() 
    {
        return pcStatus;
    }
    public void setPcPlanEnvReviewNum(String pcPlanEnvReviewNum) 
    {
        this.pcPlanEnvReviewNum = pcPlanEnvReviewNum;
    }

    public String getPcPlanEnvReviewNum() 
    {
        return pcPlanEnvReviewNum;
    }
    public void setPcBeginningReport(String pcBeginningReport) 
    {
        this.pcBeginningReport = pcBeginningReport;
    }

    public String getPcBeginningReport() 
    {
        return pcBeginningReport;
    }
    public void setPcApproval(String pcApproval) 
    {
        this.pcApproval = pcApproval;
    }

    public String getPcApproval() 
    {
        return pcApproval;
    }
    public void setEpId(Long epId) 
    {
        this.epId = epId;
    }

    public Long getEpId() 
    {
        return epId;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("pcId", getPcId())
            .append("pcName", getPcName())
            .append("pcCode", getPcCode())
            .append("pcAddress", getPcAddress())
            .append("pcContent", getPcContent())
            .append("pcCycle", getPcCycle())
            .append("pcEnvSectors", getPcEnvSectors())
            .append("pcBuildProperties", getPcBuildProperties())
            .append("pcNowPepNo", getPcNowPepNo())
            .append("pcPlanEnvCase", getPcPlanEnvCase())
            .append("pcPlanEnvCensors", getPcPlanEnvCensors())
            .append("pcNolinearEngLng", getPcNolinearEngLng())
            .append("pcNolinearEngLat", getPcNolinearEngLat())
            .append("pcLinearEngLngStar", getPcLinearEngLngStar())
            .append("pcLinearEngLngEnd", getPcLinearEngLngEnd())
            .append("pcLinearEngLatStar", getPcLinearEngLatStar())
            .append("pcLinearEngLatEnd", getPcLinearEngLatEnd())
            .append("pcEngLength", getPcEngLength())
            .append("pcTotalInvestment", getPcTotalInvestment())
            .append("pcEnvironmentInvestment", getPcEnvironmentInvestment())
            .append("pcInvestmentRatio", getPcInvestmentRatio())
            .append("pcProjectStartTime", getPcProjectStartTime())
            .append("pcEinsatzZiel", getPcEinsatzZiel())
            .append("pcIndustryType", getPcIndustryType())
            .append("pcApplicationCategory", getPcApplicationCategory())
            .append("pcPlanEnvFilename", getPcPlanEnvFilename())
            .append("pcStatus", getPcStatus())
            .append("pcPlanEnvReviewNum", getPcPlanEnvReviewNum())
            .append("pcBeginningReport", getPcBeginningReport())
            .append("pcApproval", getPcApproval())
            .append("epId", getEpId())
            .append("delFlag", getDelFlag())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
